// 这是制作文件盒卡片的函数

import { jsPDF } from "jspdf";

import { drawText, addFontToPdf, Rect, Point } from "./jspdf-helper.js";

/**
 * 绘制单张存档文件单子
 * @param profile 配置
 * @param content 内容
 */
export function drawDocLabel(
  pdf: jsPDF,
  label: Rect,
  point: Point,
  content: string[],
  withCutLine = true,
) {
  // 文件盒卡片包含两张
  // 一张横版，一张竖版
  const hProfile: Rect = {
    w: 88,
    h: 55,
  };

  const vProfile: Rect = {
    w: 38,
    h: 180,
  };

  const radius = 0;

  addFontToPdf(pdf, "canger", "站酷仓耳渔阳体-W03.ttf");
  const fontOpt = {
    name: "canger",
    size: 16,
    color: "#000000",
  };

  // 开始画图左上角点位置
  const { x, y } = point;

  const tipPoint = {
    x: x + 20,
    y: y + 20,
  };

  drawText(pdf, tipPoint, "沿红线剪下来", "left", label.w, fontOpt);

  // 横版开始位置
  const hPoint = {
    x: x + 10,
    y: y + 30,
  };

  // 竖版开始位置
  const vPoint = {
    x: x + 120,
    y: y + 30,
  };

  if (withCutLine) {
    pdf.setLineWidth(0.1);
    pdf.setLineDashPattern([4, 2], 0);
    pdf.setDrawColor("#ff0000");
    pdf.rect(hPoint.x, hPoint.y, hProfile.w, hProfile.h).fill();
    pdf.rect(vPoint.x, vPoint.y, vProfile.w, vProfile.h).fill();
    pdf.setLineDashPattern([], 0);
  }

  pdf.setDrawColor("#000000");

  pdf
    .roundedRect(
      hPoint.x + 2,
      hPoint.y + 2,
      hProfile.w - 4,
      hProfile.h - 4,
      2,
      2,
    )
    .fill();

  const p1 = {
    x: hPoint.x + hProfile.w / 2,
    y: hPoint.y + 10,
  };

  drawText(pdf, p1, "存档文件", "center", label.w, fontOpt);

  drawText(
    pdf,
    { x: p1.x, y: p1.y + 20 },
    content[1],
    "center",
    hProfile.w,
    fontOpt,
  );

  drawText(
    pdf,
    { x: p1.x, y: p1.y + 30 },
    content[2],
    "center",
    hProfile.w,
    fontOpt,
  );

  drawText(
    pdf,
    { x: p1.x - hProfile.w / 2, y: p1.y + hProfile.h - 20 },
    content[3],
    "left",
    hProfile.w,
    fontOpt,
  );

  pdf
    .roundedRect(
      vPoint.x + 2,
      vPoint.y + 2,
      vProfile.w - 4,
      vProfile.h - 4,
      2,
      2,
    )
    .fill();

  // const p2 = {
  //   x: x + vProfile.w / 2,
  //   y: y + 10,
  // };

  // drawText(pdf, p2, "nimeio雪法", "center", vProfile.w, fontOpt);

  // if (withCutLine) {
  //   pdf.text("沿红线剪下来", 10, 10);

  //   pdf.setLineWidth(0.1);
  //   pdf.setDrawColor("#FF0000");
  //   // 画横框

  //   pdf.roundedRect(x, y, hProfile.w, hProfile.h, radius, radius).fill();

  //   // 画竖框
  //   pdf.roundedRect(vx, vy, vProfile.w, vProfile.h, radius, radius).fill();

  //   pdf.setLineWidth(1);
  //   pdf.setDrawColor("#0000FF");

  //   // 画横框

  //   pdf.roundedRect(x + 2, y + 2, hProfile.w - 4, hProfile.h - 4, 2, 2).fill();

  //   // 画竖框
  //   pdf
  //     .roundedRect(vx + 2, vy + 2, vProfile.w - 4, vProfile.h - 4, 2, 2)
  //     .fill();
  // }

  // //
  // // pdf.circle(x, y, 1)

  // // 写横版内容

  // drawText(pdf, point, hProfile.w / 2, 10, "存档文件", 14, "center", 88);
  // drawText(pdf, point, hProfile.w / 2, 25, content[1], 16, "center", 80);
  // drawText(pdf, point, hProfile.w / 2, 45, content[2], 14, "center", 88);

  // // 左下角，标签
  // drawText(pdf, point, 5, 50, "产业发展科", 12, "left", 40);

  // // 右下角，日期
  // drawText(pdf, point, 83, 50, content[4], 12, "right", 40);

  // // 写竖版内容
  // // 正中间上方 产业发展科
  // drawText(pdf, vPoint, vProfile.w / 2, 10, "存档文件", 14, "center", 32);

  // drawText(pdf, vPoint, vProfile.w / 2, 30, content[1], 16, "center", 32);
  // drawText(pdf, vPoint, vProfile.w / 2, 130, content[2], 14, "center", 32);

  // // 下方，日期
  // drawText(pdf, vPoint, vProfile.w / 2, 160, "产业发展科", 12, "center", 32);
  // drawText(pdf, vPoint, vProfile.w / 2, 170, content[4], 12, "center", 32);

  return pdf;
}

// /**
//  * 绘制标签内容，不同的配置这个函数要对应修改
//  * @param pdf pdf对象
//  * @param label 标签尺寸
//  * @param point 标签左上角位置
//  * @param content 内容
//  * @param withCutLine 是否要剪切边框
//  * @returns
//  */
// export function drawDocLabel(
//   pdf: jsPDF,
//   label: Rect,
//   point: Point,
//   content: string[],
//   withCutLine = true,
// ) {
//   const { w, h } = label;
//   const { x, y } = point;

//   pdf.setLineWidth(1);
//   pdf.setDrawColor("#ffc0cb");
//   pdf.roundedRect(x + 2, y + 2, w - 4, h - 4, 4, 4).fill();

//   addFontToPdf(pdf, "canger", "站酷仓耳渔阳体-W03.ttf");

//   const fontOpt = {
//     name: "canger",
//     size: 16,
//     color: "#00FF03",
//   };

//   const p1 = {
//     x: x + w / 2,
//     y: y + 10,
//   };

//   const p2 = {
//     x: x + w / 2,
//     y: y + 20,
//   };

//   const fontOpt2 = {
//     name: "canger",
//     size: 36,
//     color: "#0005FF",
//   };

//   drawText(pdf, p1, content[1], "center", w, fontOpt);
//   drawText(pdf, p2, content[3], "center", w, fontOpt2);

//   if (withCutLine) {
//     pdf.setLineWidth(0.1);
//     pdf.setLineDashPattern([4, 2], 0);
//     pdf.setDrawColor("#aaaaaa");
//     pdf.rect(x, y, w, h).fill();
//     pdf.setLineDashPattern([], 0);
//   }

//   return pdf;
// }
